home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-11-22 | 50.1 KB | 1,417 lines |
-
- 1
-
-
- HRAM
- Version 1.3
- User's Guide
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2
-
-
- COPYRIGHT
-
- This HRAM documentation and the software are copyrighted with all
- rights reserved. Under the copyright laws, neither the
- documentation nor the software may be copied, photocopied,
- reproduced, translated, or reduced to any electronic medium or
- machine-readable form, in whole or in part, without the prior
- written consent of Biologic, except in the manner described in
- this manual. The unregistered version of HRAM and accompanying
- documentation may be freely copied and distributed.
-
- Copyright (C) Biologic 1990-1992
-
- All rights reserved. First edition printed 1990. Printed in the
- United States.
-
- Software License Notice
-
- Your license agreement with Biologic, which is included with the
- product, specifies the permitted and prohibited uses of the
- product. Any unauthorized duplication or use of HRAM in whole or
- in part, in print, or in any other storage and retrieval system
- is forbidden.
-
- Licenses and Trademarks
-
- 386MAX is a registered trademark of Qualitas, Inc. QEMM is a
- registered trademark of Quarterdeck Office Systems, Inc. MS-DOS
- is a registered trademark of Microsoft Corporation. HRAM is a
- trademark of Biologic.
-
-
- Biologic
- POB 1267
- Manassas VA
- 22110
- USA
-
- 703-368-2949
- 800-736-8088 (orders only)
- 703-361-8251 (fax)
- 70033,1324 (compuserve)
-
-
-
-
-
-
-
-
-
- 3
-
-
- CONTENTS
-
- License Agreement and Disclaimer of Warranty
- Introduction
- Notes on Memory and Memory Addresses
- Testing Your Memory with Chkmem
- Shadow Memory
- Notes for 8088 and 80286 PCs
- Notes for 80386 PCs
- Condensed Instructions
- hramdev.sys
- hram.exe
- hram.sys
- Your Turn
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 4
-
-
- LICENSE AGREEMENT AND DISCLAIMER OF WARRANTY
-
- License agreement
-
- The terms of this license agreement apply to you and to any
- subsequent licensee of this HRAM software. Biologic retains the
- ownership of this copy of HRAM software. This copy is licensed
- to you for use under the following conditions.
-
- You may use the HRAM software on any compatible computer,
- provided the HRAM software is used on only one computer and by
- one user at a time.
-
- You may not provide use of the software in a computer service
- business, network, timesharing, multiple CPU or multiple user
- arrangement to users who are not individually licensed by
- Biologic, except that you may designate any employee to use
- such products on a one employee per license basis.
-
- You may not disassemble or decompile the HRAM software.
-
- Disclaimer of warranty
-
- Biologic excludes any and all implied warranties, including
- warranties of merchantability and fitness for a particular
- purpose. Biologic does not make any warranty of representation,
- either express or implied, with respect to this software program,
- its quality, performance, merchantability, or fitness for a
- particular purpose. Biologic shall not have any liability for
- special, incidental, or consequential damages arising out of or
- resulting from the use of this program.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 5
-
-
- INTRODUCTION
-
- Description
-
- HRAM is a powerful memory management program for 8088, 8086,
- 80286, 80386 and 80486 PCs that enhances the utilization of upper
- memory (memory between 640K and 1024K). It works in conjunction
- with DOS 5 to create up to 96K of extra conventional memory and
- up to 224K of upper memory for use by device drivers (such as
- network drivers) and memory resident programs (TSRs). In
- addition, it provides many of the necessary memory management
- features DOS 5 left out:
-
- HRAM creates upper memory on 8088, 80286, 80386, and 80486 PCs
- (DOS 5 creates upper memory on 80386 and 80486 PCs only.)
-
- HRAM utilizes the shadow RAM capability of many chip sets to
- create upper memory (the file chipset.doc contains a complete
- listing of supported chip sets). This may eliminate the need
- to use the DOS 5 program, emm386.exe (or any other 80386
- expanded memory manager), resulting in a speed increase of 10
- to 40 percent!
-
- On 80386 and 80486 PCs, HRAM provides more upper memory than
- DOS 5 by thoroughly searching the area between 640K and 1024K
- and converting ALL unused regions to upper memory--memory that
- DOS 5 often overlooks.
-
- HRAM gives you an extra 64K of upper memory for program
- initialization by using expanded memory for loading drivers
- and TSRs--this means you'll often load programs you couldn't
- load before.
-
- HRAM optimizes your upper memory by automatically determining
- which order and in which memory region your drivers and TSRs
- should be loaded. This one step can easily double the
- utilization of your upper memory. (DOS 5 suggests that you
- "experiment with different combinations and orders of
- programs". When you consider that your upper memory may
- consist of several separate regions and that you probably use
- up to a dozen drivers and TSRs, this process, without HRAM,
- could require rebooting your PC thousands of times!)
-
-
- Overview
-
- HRAM is a set of programs that consists of:
-
- hramdev.sys, a device driver that manages upper memory and can
-
-
- 6
-
- fill unused upper memory areas with expanded memory or shadow
- RAM.
-
- hram.exe, a program that works in conjunction with the DOS
- LOADHIGH command to optimally load TSRs into the upper memory
- created by hramdev.sys. hram.exe also provides a status
- report of upper memory and lists the programs that have been
- loaded into it.
-
- hram.sys, a special driver that works in conjunction with the
- DOS DEVICEHIGH command to optimally load device drivers into
- upper memory.
-
- A utility program, Chkmem, is included in the package and
- provides information about the status of memory in your PC.
-
- Requirements
-
- A PC with a 8088, 8086, 80286, 80386 or 80486 microprocessor.
-
- IBM Personal Computer Disk Operating System (PC-DOS) or
- Microsoft Disk Operating System (MS-DOS) version 5.0 or
- greater.
-
- On 8088 and 80286 PCs, expanded memory version 4 or shadow
- RAM.
-
- Contents of the HRAM disk
-
- The following files are included in the root directory of the
- distribution disk.
-
- hramdev.sys
- hram.exe
- hram.sys
- chkmem.exe
- read.me
-
- There may also be a \freeware directory which contains
- unregistered versions of our other software products.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 7
-
-
- NOTES ON MEMORY
- AND MEMORY ADDRESSES
-
- Conventional Memory
-
- Conventional memory is located between 0K and 1024K and is the
- maximum amount of memory that can be addressed by the 8088
- microprocessor on which the IBM PC is based.(1) The designers
- of the original PC divided conventional memory space into a 640K
- block of memory to be used by MS-DOS programs and a 384K block of
- upper memory for system hardware and ROM. The term, conventional
- memory, is sometimes used to refer just to memory from 0 to 640K.
-
- Upper Memory
-
- Upper memory is located between 640K and 1024K was originally
- intended to be reserved for system hardware and ROM. Since the
- amount of free conventional memory between 0K and 640K is
- critical to the performance of your PC, DOS 5 utilizes upper
- memory blocks (UMBs) and provides a way of moving device drivers
- and TSRs out of conventional memory and into upper memory (with
- the DEVICEHIGH and LOADHIGH commands). DOS 5 will use upper
- memory only if a program which provides UMBs (like hramdev.sys or
- emm386.sys) has been loaded and "dos=umb" is in your config.sys
- file.
-
- High Memory Area
-
- The high memory area (HMA) is a 64K region starting at 1024K
- (1M). Usually, part of DOS is loaded into this area to free up
- low DOS memory (if "dos=high" is in your config.sys file). This
- region is not upper memory, and DEVICEHIGH and LOADHIGH do not
- load programs into it.
-
- Expanded Memory
-
- Expanded memory is "paged" memory that can exist in 8088, 80286,
- and 80386(2) based PCs. As the memory requirements of programs
- grew, expanded memory was developed to support up to 32M of
- memory by swapping small blocks or "pages" of extra memory into
- the 1M address space of the 8088 processor so that only a few
- pages are addressable at a time. Memory pages that are not in
- use are stored as deactivated pages on an expanded memory board.
-
- The original expanded memory specification, EMS version 3.2, was
- developed jointly by Lotus, Intel, and Microsoft. Soon after,
- AST and Ashton-Tate developed a similar, but enhanced,
-
- ____________________
-
- (1) 1K equals 1,024 bytes. 1024K equals 1,048,576 bytes or 1
- megabyte.
-
- (2) Throughout the remainder of this documentation anything
- said about 80386 PCs applies equally to 80486 PCs.
-
-
- 8
-
- specification called EEMS. These two specifications were
- replaced by EMS version 4.0, which incorporated features of both
- specifications.
-
- Below is a summary of a few important features:
-
- An expanded memory page is 16K in size.
-
- Expanded memory that conforms to the version 3.2 specification
- can be mapped only into a 64K region in upper memory called
- the page frame. EMS version 4.0 supports the mapping of
- expanded memory into any location in conventional memory.
-
- A software control program, called an expanded memory manager,
- manages the placement of memory pages, and is typically loaded
- by the config.sys file when your PC is turned on or restarted.
-
- Extended Memory
-
- Intel's newer processors, starting with the 80286, are capable of
- addressing memory above 1M--extended memory. Unfortunately, this
- memory is not addressable when these processors are in a
- processor state called real mode (a mode designed to maintain
- compatibility with the 8088) and cannot be fully utilized when
- using a real mode operating system such as MS-DOS.
-
- The problem of accessing extended memory while running MS-DOS has
- spawned several solutions:
-
- On PCs that support extended memory, a feature of the ROM BIOS
- allows programs to copy data between conventional and extended
- memory. Although programs cannot execute in extended memory,
- they can use it as storage space. Programs that take
- advantage of this feature include RAM disks, print spoolers,
- and 80286 expanded memory simulators.
-
- Protected mode run-time environments which allow an
- application program to execute in protected mode under MS-DOS.
-
- 80386 memory managers, like VRAM/386, that use the page
- mapping capability of the 80386 processor to convert extended
- memory into expanded memory and provide additional
- conventional memory for use by MS-DOS.
-
- Memory Addresses
-
- Memory addresses and ranges are typically specified using
- hexadecimal (hex) numbers. Hex numbers include the digits 0-9
- and the letters A-F, giving 16 possible values for each hex
- digit.
-
- Conventional memory can be divided into 64 pages of 16K each.
- These pages can be referred to as page 0, page 1, page 2, and so
- on, or, as is the case in this manual, by their hexadecimal
- segment addresses. Using this notation, page 0 is at segment 0,
-
-
- 9
-
- page 1 is at segment 0400, page 2 is at segment 0800, etc. The
- following table lists some page numbers and their corresponding
- segment address and linear address:
-
- Segment Linear
- Page Address Address
- ________________________________
-
- 0 0000 0K
- 1 0400 16K
- 2 0800 32K
- 3 0c00 48K
- 4 1000 64K
- 5 1400 80K
- 8 2000 128K
- 12 3000 196K
- 40 a000 640K
- 44 b000 704K
- 63 fc00 1,008K
-
-
- The first 40 pages (640K) of conventional memory are used by MS-
- DOS and the other 24 pages are reserved for system hardware and
- ROM. The exact usage of the upper 384K of conventional memory
- depends on the hardware configuration of your machine; typically,
- several blocks of this area are not used and are simply empty
- space.
-
- The table below lists the memory map of a typical PC:
-
- Address
- Range Description
- ________________________________________
-
- 0000-9fff low DOS memory (640K)
- a000-bfff VGA display adapter (128K)
- c000-c7ff hard disk controller (32K)
- c800-cfff unused address space (32K)
- d000-dfff expanded memory page frame (64K)
- e000-efff unused address space (64K)
- f000-ffff ROM
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 10
-
-
- TESTING YOUR MEMORY WITH CHKMEM
-
- The Chkmem program is a memory utility which displays the types
- and amounts of memory in your PC. With it, you can determine the
- current status of the upper memory area. Chkmem can also
- identify the chip set in your computer.
-
- Enter the command [chkmem] (don't type the brackets) to display
- the amount of upper memory that can be created on your PC.
- Example output is shown below:
-
- Biologic Chkmem, version 1.3
- copyright (c) Biologic 1990-1992. all rights reserved.
-
- 655360 bytes conventional memory
- 0 bytes extended memory
- 351232 bytes available XMS memory
- 655360 bytes expanded memory
-
- 0 bytes upper memory
- 0 bytes upper memory blocks (UMBs) can be converted to
- upper memory
- 0 bytes expanded memory can be converted to upper memory
- 163840 bytes unused areas or shadow ram can be converted to
- upper memory
- 163840 bytes upper memory can be created
-
-
- If the last line in the listing, "bytes upper memory can be
- created", is not 0, then HRAM can create and/or manage upper
- memory on your PC.
-
- 8088 and 80286 PCs: If the listing shows that the only
- available source of upper memory is "unused areas or shadow
- RAM", as in the example above, then your computer must have a
- chip set that is supported by HRAM or you must add expanded
- memory to your system. The file, chipset.doc, contains a list
- of chip sets that are supported and the section, "Shadow
- memory", describes how to determine which chip set you have.
- Read the section, "Notes for 8088 and 80286 PCs" for more
- information on installing expanded memory.
-
- 8088 and 80286 PCs: If your chip set is not supported by HRAM
- and only 65536 bytes (64K) of expanded memory can be converted
- to upper memory, your expanded memory may not be fully
- compatible with the EMS version 4.0 specification or it may
- need to be configured differently. Read the section, "Notes
- for 8088 and 80286 PCs" for more information on configuring
- your expanded memory.
-
-
-
-
-
-
-
- 11
-
-
- SHADOW MEMORY
-
- Most PCs are designed so that a 384K segment of memory, located
- between 640K and 1024K, is reserved for shadowing ROM. When your
- PC is started, the shadow memory at ROM locations is activated
- and the ROM code is copied to it. The remaining shadow memory is
- not activated and is not used.
-
- HRAM locates these regions of unused shadow memory, activates
- them, and converts them to upper memory. This means:
-
- HRAM can create upper memory on 80286 PCs.
-
- HRAM can create upper memory on 80386 PCs without using
- emm386.exe or any other expanded memory manager. This is
- an important advantage because 80386 memory managers (like
- emm386, 386MAX, and QEMM) must switch the 80386 chip to a
- mode which causes your PC to run slower than normal. If
- you don't need expanded memory, you can use HRAM to create
- upper memory, and your PC will run at full speed.
-
- Determining your chip set
-
- The amount of upper memory created from shadow memory, and how it
- is activated, depends on which chip set is in your PC. Since
- HRAM cannot automatically determine which chip set you have, you
- must determine this yourself and specify the chip set on the
- hramdev.sys command line (using the /t<chip set number> option).
-
-
- There are several ways to determine your chip set:
-
- Look for it on the setup screen or in the documentation for
- your PC.
-
- Use the [chkmem /t] command. The chkmem program will
- attempt to identify the chip set. It is possible that
- chkmem will not be successful. This does not mean your
- shadow memory cannot be utilized--you just need to identify
- it another way. (Your PC should be rebooted after using
- this command).
-
- Ask the manufacturer of your PC.
-
- Take off the cover and look. The chip set will consist of
- one or more chips (large or small) identified by names
- and/or numbers. Try to match the number(s) with those
- listed in the file 'chipset.doc'.
-
-
-
-
-
-
-
-
- 12
-
-
- NOTES FOR 8088 AND 80286 PCS
-
- 1. HRAM can utilize the shadow RAM capability of many chip sets
- to create upper memory blocks; expanded memory is not
- required. The file, chipset.doc, contains a list of chip sets
- HRAM currently supports.
-
- 2. HRAM can also convert expanded memory to upper memory,
- provided your expanded memory is hardware compatible with EMS
- version 4.0. If the Chkmem program reported that only 65536
- bytes of upper memory can be created from expanded memory,
- then your expanded memory is either not hardware compatible
- with EMS 4 or it needs to be reconfigured. Consult the
- documentation for the board or contact your computer dealer to
- make this determination (note: many memory boards are software
- compatible with EMS 4 but are not fully compatible on a
- hardware level).
-
- 3. If your expanded memory is hardware compatible with EMS 4 and
- Chkmem reports that only 65536 bytes of upper memory can be
- created from expanded memory, then you need to reconfigure
- your expanded memory by changing the line in your config.sys
- file that loads the expanded memory manager for the board.
- Run the command [chkmem /c] to display a recommended command
- line for your expanded memory manager.
-
- 4. If your expanded memory is not hardware compatible with EMS 4,
- you can still create upper memory by using the hramdev /f
- option. This option will give you 64K of upper memory, but
- will make your expanded memory unavailable to other programs.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 13
-
-
- NOTES FOR 80386 PCS
-
- 1. HRAM can utilize the shadow RAM capability of many chip sets
- to create upper memory blocks. If you do not need to convert
- extended memory to expanded memory, the expanded memory
- manager, emm386.exe, is not required. The file, chipset.doc,
- contains a list of chip sets HRAM currently supports.
-
- 2. If HRAM does not support the shadow RAM capability of your
- chip set or if you need expanded memory, the program,
- emm386.exe, should be loaded in your config.sys file.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 14
-
-
- CONDENSED INSTRUCTIONS
-
- Creating Upper Memory
-
- Processor: 80386, 80486
- From: shadow memory
- When: HRAM supports your chip set and you do not need expanded
- memory
-
- 1. Add the line [dos=umb] to your config.sys file (its location
- in your config.sys file is not important).
-
- 2. Add the line [device=hramdev.sys /t<chipset>] to your
- config.sys file (<chipset> is the number identifying the chip
- set in your computer). This line should be located after the
- line [device=himem.sys] and near the beginning before any
- other [device=] lines.
-
- 3. Reboot your PC and run the Chkmem program. Chkmem should
- report a non-zero value for "bytes upper memory". Enter the
- command [chkmem /h] to display the size and location of the
- upper memory regions in your PC.
-
- Processor: 80386, 80486
- From: expanded memory manager (emm386.exe)
- When: HRAM does not support your chip set or you need expanded
- memory
-
- 1. Add a [device=] line to your config.sys file which loads your
- expanded memory manager. An expanded memory manager is a
- single file which, typically, has "EMM" in its name. If this
- line already exists in your config.sys file, you may need to
- change the parameters so that your expanded memory is
- configured correctly.
-
- DOS 5 provides an expanded memory manager, emm386.exe, for use
- on 386 PCs. You should run the [chkmem /c] command to list
- the recommended command line for emm386.exe, and add this line
- to your config.sys file (or modify it if it already exists).
- This line should be located immediately after the line
- [device=himem.sys].
-
- 2. Add the line [dos=umb] to your config.sys file (its location
- in your config.sys file is not important).
-
- 3. Add the line [device=hramdev.sys] to your config.sys file.
- This line should be located after the line [device=emm386.exe]
- and near the beginning before any other [device=] lines.
-
- 4. Reboot your PC and run the Chkmem program. Chkmem should
- report a non-zero value for "bytes upper memory". Enter the
- command [chkmem /h] to display the size and location of the
- upper memory regions in your PC.
-
-
-
- 15
-
- Processor: 8088, 80286
- From: shadow memory
- When: HRAM supports your chip set
-
- 1. Add the line [dos=umb] to your config.sys file (its location
- in your config.sys file is not important).
-
- 2. Add the line [device=hramdev.sys /t<chipset>] to your
- config.sys file (<chipset> is the number identifying the chip
- set in your computer). This line should be located after the
- line [device=himem.sys] and near the beginning before any
- other [device=] lines.
-
- 3. Reboot your PC and run the Chkmem program. Chkmem should
- report a non-zero value for "bytes upper memory". Enter the
- command [chkmem /h] to display the size and location of the
- upper memory regions in your PC.
-
- Processor: 8088, 80286
- From: expanded memory
- When: HRAM does not support your chip set and you have EMS 4
- expanded memory in your computer.
-
- 1. Add a [device=] line to your config.sys file which loads your
- expanded memory manager. An expanded memory manager is a
- single file which, typically, has "EMM" in its name. If this
- line already exists in your config.sys file, you may need to
- change the parameters so that your expanded memory is
- configured correctly.
-
- Run the command [chkmem /c] to list a recommended command line
- for the expanded memory manager that was provided with your
- memory board. You should add this line to your config.sys
- file (or modify it if it already exists). Since expanded
- memory managers are different for every board, the syntax of
- this command may differ slightly from what is displayed by
- [chkmem /c]. You should consult the documentation for your
- memory board for information on the exact syntax of this
- command.
-
- 2. Add the line [dos=umb] to your config.sys file (its location
- in your config.sys file is not important).
-
- 3. Add the line [device=hramdev.sys /e] to your config.sys file.
- This line should be located after the line that loads your
- expanded memory manager and near the beginning before any
- other [device=] lines.
-
- 4. Reboot your PC and run the Chkmem program. Chkmem should
- report a non-zero value for "bytes upper memory". Enter the
- command [chkmem /h] to display the size and location of the
- upper memory regions in your PC.
-
-
-
-
- 16
-
- Optimizing upper memory
-
- Upper memory is utilized in two ways: (1) programs that recognize
- this area will automatically take advantage of it, and (2) TSRs
- and device drivers can be loaded into it with the DOS commands
- DEVICEHIGH and LOADHIGH.
-
- The process of loading programs high is complicated by the fact
- that upper memory is a relatively small area, which may consist
- of several regions of different sizes, and that, when loaded,
- programs have an initialization size which may be much larger (or
- smaller) than their resident size. Loading programs in a
- different order or into different memory regions can
- significantly increase the number of programs you are able to
- load high.
-
- HRAM provides features which allow you to gain optimum use of
- your upper memory: it automatically determines the resident size
- and initialization size of each of your drivers and TSRs, it
- calculates the best configuration for your upper memory, it
- allows you to load a program into a specific region, and it
- provides an extra 64K of memory for program initialization by
- temporarily adding expanded memory to upper memory.
-
- Follow the steps below to optimize your memory:
-
- 1. Add the /s option to the [device=hramdev.sys] line in your
- config.sys file and add a new line as shown below:
-
- device=hramdev.sys /s
- device=hram.sys on
-
- 2. Reboot your PC.
-
- 3. Type the command [hram /l] to list the analysis of your
- drivers and TSRs.
-
- 4. Type the command [hram /c] to list recommended commands for
- loading your programs high and add these lines to your
- config.sys and autoexec.bat files.
-
- 5. Remove the /s option from the [device=hramdev.sys] line in
- your config.sys file and reboot your PC.
-
- 6. Use the [hram /m] command to list the programs that have been
- loaded into upper memory.
-
-
-
-
-
-
-
-
-
-
- 17
-
-
- HRAMDEV.SYS
-
- Command reference
-
- The format of the hramdev.sys command is
-
- device=d:\path\hramdev.sys [options]
-
- [options]
- specifies the optional hramdev.sys parameters described in the
- following section.
-
- The following options can appear in the hramdev.sys command.
-
- /e
- Convert expanded memory to upper memory. HRAM will fill
- unused region between 640K and 1024K with expanded memory and
- convert them to upper memory blocks. Your expanded memory
- must be hardware compatible with EMS 4 and be capable of being
- mapped to these regions. The command [chkmem /e] will display
- a list of mappable memory segments (16K). The page frame is
- not used for upper memory (see /f option).
-
- /f
- Use the expanded memory page frame for upper memory. The page
- frame is a 64K buffer in the upper memory area into which
- expanded memory pages are mapped. Although EMS version 4.0
- supports mapping of expanded memory to areas outside the page
- frame, most software programs, at a minimum, require the page
- frame to be available. This option will create an additional
- 64K of upper memory, but will, in most cases, prevent other
- programs from utilizing expanded memory.
-
- /i<addressrange>
- Include address range. The memory range specified by
- <addressrange> will be converted to upper memory. It must be
- above a000 (hex). <addressrange> is specified with
- hexadecimal segment addresses which must be multiples of 16K
- (0000, 0400, 0800, 0c00, 1000, 1400, ...). For example, to
- include the range c000 to c800 use the parameter [/ic000-
- c800]. Multiple include ranges should be separated by commas.
- For example, [/ic000-c800,e000-f000].
-
- If /i is used, only the memory areas with the include range(s)
- will be available as upper memory.
-
- This option is useful only if there are mappable areas in
- upper memory that should not be under the control of
- hramdev.sys. Normally, this option should not be used;
- hramdev.sys will automatically convert all available memory
- (excluding the page frame) into upper memory.
-
- /k
- Pause after loading (so you can read memory map screen).
-
-
- 18
-
- /n
- No pause on error. If hramdev.sys reports an error, it waits
- for you to press a key. This option causes hramdev.sys to
- continue without waiting for a key.
-
- /p
- Do not use expanded memory for program initialization.
- Normally, HRAM provides extra memory for use by programs
- during their initialization by temporarily adding 64K of
- expanded memory to upper memory.
-
- /r
- Use previously activated RAM. HRAM will convert any RAM it
- finds into upper memory (except a000-afffh and b000-b7ffh).
- Use this option with caution since there may be RAM present in
- the upper memory area (such as a network card buffer) that
- should not be converted to upper memory.
-
- This option might be useful if you have shadow memory and
- hramdev.sys fails to load after a warm boot.
-
- /s
- Get size of programs. HRAM will calculate the resident size
- and initialization size of every driver and TSR that is loaded
- after it and write this information to the file
- "\hram0000.dat" for use by the [hram /l] command (The HRAM
- status must be "on"--see "Condensed Instructions"). Programs
- will not be loaded high when this option is used.
-
- /t<chipset number>
- Use shadow memory. HRAM will convert shadow memory to upper
- memory. Since HRAM cannot automatically determine which chip
- set you have, you must specify the chip number on the
- hramdev.sys command line (e.g. [hramdev.sys /t1] for the C&T
- NEAT Chip set). See the section, "Shadow Memory", for
- instructions on how to determine which chip set you have.
-
- /x<addressrange>
- Exclude address range. This option prevents hramdev.sys from
- using a particular range of addresses. <addressrange> is
- specified with hexadecimal segment addresses which must be
- multiples of 16K. For example, to exclude the range c000 to
- c800 use the parameter [/xc000-c800]. Multiple exclude ranges
- should be separated by commas. For example, [/xc000-
- c800,e000-f000].
-
-
-
-
-
-
-
-
-
-
-
-
- 19
-
-
- HRAM.EXE
-
- Displaying regions and programs in upper memory
-
- The command, [hram /m], will display a status report of the upper
- memory created by hramdev.sys. As illustrated in the following
- example, the report lists the location and size of each upper
- memory region as well as the TSRs and drivers that have been
- loaded:
-
- Biologic HRAM, version 1.3
- copyright (c) Biologic 1990-1992. all rights reserved.
-
- region address size
- ------ --------- ----------------
- 0 b002-b7fd 32704 ( 31.9k)
- 1 c802-dfff 98272 ( 96.0k)
-
- region address size program
- ------ --------- ---------------- -------
- 0 b003-b01b 400 ( 0.4k) (character device) setverxx
- 0 b01d-b122 4192 ( 4.1k) (character device) con
- 0 b124-b67d 21920 ( 21.4k) (character device) smartaar
- 0 b684-b6e0 1488 ( 1.5k) c:\util\unblink.com
- 0 b6e7-b7d9 3888 ( 3.8k) c:\util\calc.com
- 0 b7db-b7fd 560 ( 0.5k) (avail)
- 0 128 ( 0.1k) other allocated blocks
- 1 c803-cba0 14816 ( 14.5k) (character device) ms$mouse
- 1 cba7-cdcc 8800 ( 8.6k) c:\util\anarkey.com
- 1 cdd3-cdfe 704 ( 0.7k) c:\util\fastkey.com
- 1 ce05-ce27 560 ( 0.5k) c:\util\scrnsave.com
- 1 ce29-dfff 73072 ( 71.4k) (avail)
- 1 192 ( 0.2k) other allocated blocks
-
- expanded memory page frame located at: e000
- hram: off
-
-
- Note that each region is identified by a number, starting with 0,
- and that the report indicates into which region each TSR or
- device driver has been loaded. The amount of available space
- remaining in each region is listed also.
-
- The command, [hram /a], will list the raw memory allocations in
- upper memory.
-
- Loading TSRs into upper memory
-
- hram.exe, itself, does not load programs into upper memory, it
- works in conjunction with DOS to improve the function of the
- LOADHIGH command. hram.exe provides a way to load a program into
- a specific memory region and provides an extra 64K for program
- initialization by temporarily converting expanded memory to upper
- memory. To illustrate, suppose you wish to load a TSR program,
-
-
- 20
-
- called Notepad, into upper memory. The command you normally use
- to load it into low memory is:
-
- notepad /i
-
- The command to load it into upper memory, without using HRAM,
- would be:
-
- loadhigh notepad /i
-
- The commands to load the program into the second memory region in
- upper memory (regions are numbered starting with 0) and provide
- an additional 64K of memory would be:
-
- hram on /r1
- loadhigh notepad /i
- hram off
-
- Although the LOADHIGH command alone will load notepad into upper
- memory, it will load it into the first available upper memory
- region; the advantage to using HRAM is that it will force
- LOADHIGH to load it into a specific region. This is an important
- feature, since in order to gain optimum use of upper memory, your
- programs should be loaded into the region recommended by HRAM
- (with the [hram /l] command). In addition, suppose you have 100K
- of upper memory, but the notepad program requires 150K for
- initialization. Without HRAM, there would not be enough upper
- memory and LOADHIGH would load it into low memory. Since HRAM
- provides an additional 64K for initialization, the program would
- be successfully loaded high.
-
- The HRAM command can be executed at the DOS prompt or it can be
- used within a batch file (usually your autoexec.bat file). When
- the HRAM command is executed without any parameters, [hram], it
- reports the current status of HRAM--on or off.
-
-
- Command reference
-
- The format of the HRAM command is
-
- hram [on|off] [options]
-
- [on|off]
- specifies whether HRAM should be "on" or "off". When HRAM is
- on, programs can only be loaded into the memory region
- specified on the HRAM command line (with the /r option) and
- 64K of expanded memory is temporarily converted to upper
- memory.
-
- [options]
- specifies the optional HRAM parameters described in the
- following section.
-
- The following options can appear in the HRAM command.
-
-
- 21
-
- /?
- Display help.
-
- /7
- Increase low DOS memory size to 704K or 736K. If a upper
- memory region exists at the address a002h (use the command
- [hram /m] to display these regions), the command [hram /7]
- will add this region to the low dos memory pool and increase
- its size to 704K or 736K. The /7 option can only be used if no
- programs have been loaded into the region at a002h. Programs
- cannot be loaded high after this option has been used.
-
- /a
- List raw memory allocations in upper memory. Use this option
- to display the memory control blocks that have been allocated
- from upper memory.
-
- /c
- List recommended config.sys and autoexec.bat files. When the
- /s option is added to the hramdev.sys command and your PC is
- rebooted, information about the memory requirements of your
- drivers and TSRs is written to the file "\hram0000.dat". The
- command [hram /c] analyzes this information and displays a
- list of recommended commands for your config.sys and
- autoexec.bat files.
-
- /i
- Display registration information. This option causes hram.exe
- to list information about registering your copy of HRAM. If
- you have not purchased a registered copy of HRAM, and you
- continue to use it after a reasonable testing period, you are
- required to register your copy.
-
- /l
- List analysis of programs. When the /s option is added to the
- hramdev.sys command and your PC is rebooted, information about
- the memory requirements of your drivers and TSRs is written to
- the file "\hram0000.dat". The command [hram /l] analyzes this
- information and displays the optimum load order and memory
- region for each program.
-
- /m
- List regions and programs in upper memory. [hram /m] lists a
- status report of upper memory, including the size and location
- of each memory region and program or device driver. Read the
- previous section, "Displaying regions and programs in upper
- memory", for more information.
-
- /n
- No pause on error. If hram.exe reports an error, it waits for
- you to press a key. This option causes hram.exe to continue
- without waiting for a key.
-
- /o<order>
- Set program load order. This option is useful only if you
-
-
- 22
-
- have a program which must be loaded before one or more other
- programs. For example, to ensure that program1.exe is loaded
- before program2.exe and program3.exe, include these commands
- in your autoexec.bat file:
-
-
- hram on /o1
- program1
- hram on /o2
- program2
- program3
- hram on
-
- To ensure that program1.exe is loaded before program2.exe and
- that program2.exe is loaded before program3.exe, use these
- commands:
-
- hram on /o1
- program1
- hram on /o2
- program2
- hram on /o3
- program3
- hram on
-
- This option is valid only if the /s option is used on the
- hramdev.sys command line. Otherwise, it is ignored.
-
- /p
- Do not temporarily convert 64K of expanded memory to upper
- memory for use during program initialization.
-
- /r<region>
- Load into memory region number <region>. This option causes
- LOADHIGH to load one or more programs into the specified
- memory region. For example, the following commands would load
- the programs, notepad.exe and calc.exe, into memory region 1
- (memory regions are numbered starting with 0):
-
- hram on /r1
- loadhigh notepad
- loadhigh calc
- hram off
-
- Without this option, LOADHIGH loads programs into the first
- memory region in which they fit.
-
-
-
-
-
-
-
-
-
-
-
- 23
-
- HRAM.SYS
-
- Like hram.exe, hram.sys does not load programs into upper memory,
- it works in conjunction with DOS to improve the function of the
- DEVICEHIGH command. hram.sys provides a way to load a device
- driver into a specific memory region and provides an extra 64K
- for driver initialization by temporarily converting expanded
- memory to upper memory. To illustrate, suppose you wish to load
- the device driver, ansi.sys, into upper memory. The command you
- normally use to load it into low memory is:
-
- device=ansi.sys
-
- The command to load it into upper memory, without using HRAM,
- would be:
-
- devicehigh=ansi.sys
-
- The commands to load the program into the second memory region in
- upper memory (regions are numbered starting with 0) and provide
- an additional 64K of memory would be:
-
- device=hram.sys on /r1
- devicehigh=ansi.sys
- device=hram.sys off
-
-
- Command reference
-
- The format of the hram.sys command is
-
- device=hram.sys [on|off] [options]
-
- [on|off]
- specifies whether HRAM should be "on" or "off". When HRAM is
- on, programs can only be loaded into the memory region
- specified on the HRAM command line (with the /r option) and
- 64K of expanded memory is temporarily converted to upper
- memory.
-
- [options]
- specifies the optional HRAM parameters described in the
- following section.
-
- The following options can appear in the HRAM command.
-
- /n
- No pause on error. If hram.sys reports an error, it waits for
- you to press a key. This option causes hram.sys to continue
- without waiting for a key.
-
- /o<order>
- Set program load order. This option is useful only if you
- have a program which must be loaded before one or more other
- programs. For example, to ensure that program1.sys is loaded
-
-
- 24
-
- before program2.sys and program3.sys, include these commands
- in your config.sys file:
-
- device=hram.sys on /o1
- device=program1.sys
- device=hram.sys on /o2
- device=program2.sys
- device=program3.sys
- device=hram on
-
- This option is valid only if the /s option is used on the
- hramdev.sys command line. Otherwise, it is ignored.
-
- /p
- Do not temporarily convert 64K of expanded memory to upper
- memory for use during program initialization.
-
- /r<region>
- Load into memory region number <region>. This option causes
- DEVICEHIGH to load one or more programs into the specified
- memory region. For example, the following commands would load
- the programs, notepad.sys and calc.sys, into memory region 1
- (memory regions are numbered starting with 0):
-
- device=hram.sys on /r1
- devicehigh=notepad.sys
- devicehigh=calc.sys
- device=hram.sys off
-
- Without this option, DEVICEHIGH loads drivers into the first
- memory region in which they fit.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 25
-
-
- YOUR TURN
-
- We value you opinions. Please let us know what you like and
- dislike about the HRAM program and user's guide. We're dedicated
- to developing the most innovative and useful software available--
- and selling it at reasonable prices. Your support helps make
- this possible.
-
- Please send all comments and suggestions to
-
- Biologic
- POB 1267
- Manassas VA
- 22110
- USA
-
- THANK YOU.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-